Most electronic and computer circuitry is now implemented with active and passive devices coupled together through use of a printed circuit board (PCB). This is true whether the circuitry is primarily analog in nature, digital in nature, or a hybrid of the two. In its simplest form, a PCB is a relatively thin sheet of dielectric (i.e. electrically non-conductive) material such as a resin-filled fiberglass. Metal lines or “traces” are typically formed on one or more surfaces of the PCB to provide electrical connection(s) between components of the various electronic circuits located on the PCB. Furthermore, PCBs can be “multi-layered” where multiple dielectric layers are located between conductive layers to form circuit, ground and/or power planes. With multi-layer boards, it is common to provide electrical connections between various layers by the formation of “vias” (or conductive plugs) between layers, or by use of “through-holes” in which conductors can be threaded. Commonly, the circuit(s) on a PCB can be connected to other devices. These may be input/output devices, other electronic and/or computer circuits located on other PCBs, transmission lines, etc. While such devices can be connected directly to a PCB (such as by being soldered to some of its traces or bonding pads), the connection to external devices or circuits is most commonly made through a removable connector assembly. Many different types of electrical connectors have been developed through the years for this purpose, and they have been designed according to several industry technical standards in order to create uniformity in their manufacture, implementation and use.
One of the most widely adopted of such standards currently used in desktop and server computing is the Peripheral Component Interconnect (or “PCI”) standard. The original IBM® personal computer (PC) architecture had a series of related hardware communication interface (or “bus”) designs rooted in the original Industry Standard Architecture (ISA) specification that led to development and adoption of the PCI standard. The original ISA specification allowed for a bus having a size (or “width”) of 16 binary information-containing digits (or “bits” in forming a binary “word”) to carry electrical signals transmitted simultaneously (or “in parallel”) for use in executing computer device addressing, data processing and control functions. However, the ISA bus architecture has a number of drawbacks, including lack of speed, being difficult to configure, and an incomplete set of standard specifications, all leading to a lack of compatibility for use with some applications. For this reason, several other proprietary bus architectures have been developed that are considered to be technically superior to ISA; including a 32-bit variant of ISA (EISA); the Micro Channel Architecture (MCA) bus developed by IBM®; NuBus developed by Apple®; SBus developed by Sun®; Zorro II (16-bit) and Zorro III (32-bit) used by Amiga; the VESA Local bus developed by the Video Electronics Standards Association; and the PCI standard which was developed by Intel®.
The PCI specification was first proposed as a standard in 1991, and it was originally designed for interconnecting circuits and devices on a PCB main circuit board (or “motherboard”), but its use has since been expanded to removable circuit cards and other computer and electronic devices. The PCI bus architecture possesses a number of advantages over other bus architectures; such as providing direct access to computer system memory without central processing unit (“CPU”) intervention; allowing for interconnection of multiple electronic and/or computer devices through a single bus (including the use of “bridges” that allow a single interconnection to be used for a connection to even more devices) and automatic configuration (or “auto-configuration”) capability. Because of these advantages (among others) along with its speed and relatively inexpensive implementation, the PCI bus architecture standard is now used in virtually every type of computer and electronic system for providing communication between hardware devices.
PCI Express is the latest development in the PCI standard to support use of connectors, expansion adapters and peripheral devices in PCs, workstations, servers, and other types of computer and electronic hardware. The bus technology implemented by the PCI Express standard can be used to provide microchip, printed circuit board (PCB), and adapter connectivity allowing communication between hardware devices in various types of computer and electronic systems. This is accomplished by implementation of a “serial” interface that allows for sequential transmission of data using point-to-point interconnections between devices, with directly wired interfaces between these connection points that usually consists of a connector/adapter combination. The PCI-X and PCI Express standards remain compatible at the software level even though the underlying hardware technology is different between the two standards. This permits PCI-X based operating systems, device drivers and BIOS systems to support PCI Express based hardware devices without any significant changes.
The PCI Express standard is not limited to use with connectors for adapters. Due to its high speed and scalable bus widths, it can be used as a high speed interface to connect many different devices incorporating different hardware designs, such as USB 2, Infiniband, Gigabit Ethernet, and others. Devices can currently be operated under the PCI Express standard at a speed which is over double the bandwidth capability of current PCI-X devices. Future system operating frequency increases and improvements in conductor materials will cause corresponding increases in the total bandwidth that the PCI Express standard is capable of supporting.